jihyeon's Blog

2023-11-26

두 수의 합 찾기


리스트에서 합이 n이 되는 두 원소를 빠르게 찾기

중첩 반복문을 사용한 일반적인 방법

data = list(map(int, input().split())) n = int(input()) def find_numbers(data, target_sum): for i in range(len(data)): for j in range(i + 1, len(data)): if data[i] + data[j] == target_sum: return data[i], data[j] return False print(find_numbers(data, n))

dict 자료형을 사용해 시간 복잡도 n으로 낮추기

data = list(map(int, input().split())) n = int(input()) def find_numbers(data, target_sum): data_set = set(data) for num in data: remainder = target_sum - num if remainder in data_set and remainder != num: return num, remainder return False print(find_numbers(data, n))

Copyright (c) 2023. jihyeon Choi. | All Right Reserved.